﻿/**
 * @author sminutoli
 * version 1.0 
 * removeItem sirve para encontrar un item en el array y hacerlo garompa
 * duplicateArray sirve para perder referencia del array original y poder manipular el nuevo a gusto
 * unsortArray devuelve un array duplicado pero desordenado con random
 */
 
import com.dinmax.flash.utilities.math.MathUtils;

class com.dinmax.flash.utilities.array.ArrayUtils {
	
	public static function removeItem(array:Array, object:Object):Object {
		for (var i : Number = 0; i < array.length; i++) {
			if(array[i] == object){
				array.splice(i, 1);
			};
		}
		return object;
	};
	
	public static function duplicateArray(array:Array):Array {
		var newArray:Array = new Array();
		for (var i : Number = 0; i < array.length; i++) {
			newArray.push(array[i]);
		}
		return newArray;
	};
	
	public static function unsortArray(array:Array):Array {
		//extraigo la cantidad de elementos del array
		var nElements:Number = array.length;
		//armo una serie desordenada con esa cantidad de elementos
		var aUnsort:Array = MathUtils.getUnsortSerie(nElements);
		//creo un nuevo array
		var a:Array = new Array();
		for(var i:Number=0; i < aUnsort.length; i++){
			a.push(array[aUnsort[i]]);
		}
		return a;
	}
	
};